
#include "task.h"
#include "interrupt.h"
#include "screen.h"

#include "queue.h"


struct Test
{
    QueueNode head;
    int value;
};

Queue g_q;
struct Test g_arr[5];


void KMain()
{
    int n = PrintString("D.T.OS\n");

    PrintString("GDT Entry: ");
    PrintIntHex((uint)gGdtInfo.entry);
    PrintChar('\n');
    
    PrintString("GDT Size: ");
    PrintIntDec((uint)gGdtInfo.size);
    PrintChar('\n');
    
    PrintString("IDT Entry: ");
    PrintIntHex((uint)gIdtInfo.entry);
    PrintChar('\n');
    
    PrintString("IDT Size: ");
    PrintIntDec((uint)gIdtInfo.size);
    PrintChar('\n');


    TaskModInit();
    
    IntModInit();

    LaunchTask();
}
